
export default class Observer{
     constructor(){
        this.arr = [];//保存所有的订阅（者）
     }

    //  添加订阅者
    addSubscriber(cb){
        this.arr.push(cb);
    }

    // 发布
    publish(what){
        this.arr.forEach(item=>{
            typeof item==="function" && item(what)
        })
    }

}


// let o1 = new Observer();

// o1.addSubscriber(function(val){
//     console.log("val1",val);
// })

// o1.addSubscriber(function(val){
//     console.log("val2",val);
// })

// o1.publish("hello")